﻿using System;
using System.IO;

namespace Ipmce.RemoteVoting.Common.Tools.CardReader.ImageParsing
{
	static class BigEndianConverter
	{
		public static byte[] GetByteArray(int value, int size)
		{
			var result = new byte[size];
			Array.Clear(result, 0, result.Length);
			for (var i = size - 1; i >= 0; i--)
			{
				result[i] = (byte)(value % 256);
				value /= 256;
			}
			if (value != 0)
				throw new InvalidDataException("Невозможно конвертировать значение " + value + " в массив байтов длины " + size);
			return result;
		}

		public static int GetInt(byte[] value)
		{
			int result = 0;
			for (int i = 0; i < value.Length; i++)
			{
				result *= 256;
				result += value[i];
			}
			return result;
		}
	}
}